package com.diaohw.platform.common.util;

import cn.hutool.crypto.SecureUtil;

import java.io.InputStream;

/**
 * @author 刁海文
 * @Remark 加密
 * @since 2023/7/22 14:56
 */
public class CryptoUtil {

    /**
     * 裂变次数
     */
    public static final Integer fission = 2;


    /**
     * 用户登录密码
     *
     * @param salt 用户代码
     * @param str  需要加密的内容
     */
    public static String md5(String salt, String str) {
        String pass = salt + secure(str);
        return secure(pass);
    }

    /**
     * 加密
     *
     * @param data 需要加密的数据
     * @return MD5值
     */
    public static String secure(String data) {
        String val = data;
        for (int i = 0; i < fission; i++) {
            val = SecureUtil.md5(val);
        }
        return val;
    }

    public static String md5(InputStream stream) {
        return SecureUtil.md5(stream);
    }

}
